Electrochromic panel transmission level synchronization

ABSTRACT

A method of controlling tint for a plurality of electrochromic devices, performed by a control system, is provided. The method includes receiving a request to change tint level of a plurality of electrochromic devices, and consulting transfer functions for tint level relative to drive for each of the plurality of electrochromic devices, wherein at least one of the plurality of electrochromic devices has a transfer function differing from at least one other of the plurality of electrochromic devices. The method includes driving each of the plurality of electrochromic devices in accordance with the transfer functions, so as to coordinate tint level or rate of change of tint level across the plurality of electrochromic devices.

BACKGROUND

If multiple electrochromic panels are next to or near each other, a usermay want them to always have the same tint level while static or intransition. Yet, panels of different sizes, electrochromic chemistry, orage (vintage) likely have different tint responses even when drivenidentically. They may change tint or transmissivity at different rates,or end up at a different tint level when driving stops. It is alsodesired to coordinate patterns of tint or transmissivity on multipleelectrochromic devices, e.g., on fronts or sides of large buildings.Therefore, there is a need in the art for a solution which overcomes thedrawbacks described above.

SUMMARY

In some embodiments, a method of controlling tint for a plurality ofelectrochromic devices, performed by a control system, is provided. Themethod includes receiving a request to change tint level of a pluralityof electrochromic devices, and consulting transfer functions for tintlevel relative to drive for each of the plurality of electrochromicdevices, wherein at least one of the plurality of electrochromic deviceshas a transfer function differing from at least one other of theplurality of electrochromic devices. The method includes driving each ofthe plurality of electrochromic devices in accordance with the transferfunctions, so as to coordinate tint level or rate of change of tintlevel across the plurality of electrochromic devices.

In some embodiments, a controller with transmission levelsynchronization for electrochromic devices is provided. The controllerincludes a memory, configurable to hold a plurality of transferfunctions for tint level relative to drive of electrochromic devices,and one or more processors configurable to couple to at least a firstelectrochromic device and a second electrochromic device and to performa method. The method includes consulting a first transfer function forthe first electrochromic device, and a second transfer function for thesecond electrochromic device, and driving the first electrochromicdevice in accordance with the first transfer function, and the secondelectrochromic device in accordance with the second transfer function,to coordinate tint level or rate of change of tint level of the firstelectrochromic device and tint level or rate of change of tint level ofthe second electronic device.

Other aspects and advantages of the embodiments will become apparentfrom the following detailed description taken in conjunction with theaccompanying drawings which illustrate, by way of example, theprinciples of the described embodiments.

BRIEF DESCRIPTION OF THE DRAWINGS

The described embodiments and the advantages thereof may best beunderstood by reference to the following description taken inconjunction with the accompanying drawings. These drawings in no waylimit any changes in form and detail that may be made to the describedembodiments by one skilled in the art without departing from the spiritand scope of the described embodiments.

FIG. 1A is a system diagram showing a distributed device networkcontrolling smart windows with electrochromic devices to varying levelsof tint or transmissivity, and uniform levels and rates of change oftint or transmissivity.

FIG. 1B depicts an example of smart window logical groups that can becontrolled in the system shown in FIG. 1A and variations thereof.

FIG. 2 is a cross-section view of a double pane electrochromic device.

FIG. 3A depicts transfer functions of tint versus charge for variouselectrochromic devices.

FIG. 3B depicts transfer functions of tint versus charge for varioussizes of electrochromic devices.

FIG. 4A is an embodiment of a controller that monitors and integratescurrent to determine charge transfer into and out of an electrochromicdevice, and communicates with other controllers to coordinate tint ortransmissivity levels of the electrochromic devices in accordance withtransfer functions for the electrochromic devices.

FIG. 4B depicts a variation of the controller of FIG. 4A with a driverthat has multiplexed or switched control of multiple electrochromicdevices.

FIG. 4C depicts a further variation of the controller of FIG. 4A withmultiple drivers for parallel control of multiple electrochromicdevices.

FIG. 4D depicts a further variation of the controller of FIG. 4A with adriver that controls series-connected electrochromic devices.

FIG. 5A depicts a faster tinting electrochromic device tinting andwaiting until a slower tinting electrochromic device achieves a specifictinting level.

FIG. 5B depicts the faster tinting electrochromic device tinting andwaiting to remain within a tint range of the tint level of the slowertinting electrochromic device.

FIG. 5C depicts the faster tinting electrochromic device tinting,bleaching and waiting, in various combinations, to remain within a tintrange of the tint level of the slower tinting electrochromic device.

FIG. 6 is a flow diagram of a method of controlling transmissivity ofmultiple electrochromic devices, which can be practiced by embodimentsof the controller and the distributed device network as shown in FIGS.1A-5C, 8 and 9.

FIG. 7 depicts a multiaxis space for representing tint levels that havelevels of color hues at various levels of transmissivity.

FIG. 8 is a two axis graph of visible light transmissivity, denoted asTvis, versus color hue of one of the color axes of FIG. 7, denoted asB*, showing various paths for changing tint level of an electrochromicdevice.

FIG. 9 depicts communication among smart window components, using anetwork protocol.

FIG. 10 is a flow diagram of a method of controlling color hue ofmultiple electrochromic devices, which can be practiced by embodimentsof the controller and the distributed device network as shown in FIGS.1A-5C, 8 and 9.

FIG. 11 is an illustration showing an exemplary computing device whichmay implement the embodiments described herein.

DETAILED DESCRIPTION

FIG. 1A is a system diagram showing a distributed device network 112controlling smart windows 102 with electrochromic devices 114 to varyinglevels of tint or transmissivity, and uniform levels and rates of changeof tint or transmissivity. Smart windows 102 may be more than one smartwindow, for example a window wall or multipane electrochromic window.The electrochromic devices 114 may be electrochromic devices having agradient transparent conductive layer that allows for uniform tint ortransmissivity of the electrochromic device across the entire device,eliminating the “iris effect” of electrochromic devices that do not havesuch a gradient conductive layer, as described U.S. Pat. No. 8,717,658that is incorporated herein by reference. The iris effect is whereelectrochromic windows tint or change transmissivity from the outsideinwards causing what appears to be an iris closing slowly to the centerof the device. Embodiments of the invention described herein areparticularly well suited for electrochromic devices having the gradienttransparent conductive layer or layers because the varying of the levelsof tint or transmissivity at uniform levels and rates of change canoccur within the individual electrochromic devices and across more thanone smart windows 102. This provides optimal benefits fromelectrochromic windows because the tinting and shading properties ofeach of the windows in a group will be uniform within each of thewindows. Therefore a group or pair of electrochromic smart windows 102will appear to vary or change as one without any iris effect within eachof the individual electrochromic devices 114. Control of theelectrochromic devices 114 is distributed throughout the smart windows102, smart controllers 100 for, smart window gateway 106, smart windowservices 108 (e.g. cloud services available through the Internet orother network 116, or other network-available service) and user devices,i.e., the distributed device network 112, in various combinations and invarious embodiments. Each electrochromic device 114 is controllable fortint or transmissivity, by driving charge into or out of theelectrochromic device 114 as directed by the distributed device network112. The smart windows 102 may have drivers having the electricalstructure and drive methods as described in U.S. Pat. No. 9,563,097 thatis incorporated herein by reference. The driver described in U.S. Pat.No. 9,563,097 includes a sense voltage that allows the driver and thusthe distributed device network 112 to monitor the voltage and current ofthe electrochromic devices in real time. Embodiments of this inventionmay be particularly well suited to drivers of electrochromic devices 104having such a sense voltage and ability to determine the voltage andcurrent in real time of the electrochromic devices 104 to achieveuniform levels and rates of change of tint or transmissivity within agroup or pair of smart windows 102. It is desired to drive multipleelectrochromic devices 114 to a uniform tint or transmissivity level,and at a uniform rate of change of tint or transmissivity, for reasonssuch as aesthetics, energy efficiency, or optimal performance of groupsof windows. Yet, different size electrochromic devices 114, orelectrochromic devices 114 with different age or electrochromicchemistry, respond differently when driven identically. Variousembodiments of the smart window system adjust the control of each of thevarious smart windows 102 and associated electrochromic devices 114 soas to achieve this uniform tint or transmissivity level or uniform rateof change of tinting or transmissivity, when such is desired. Onemechanism for doing so is use of transfer functions as further describedbelow.

FIG. 1B depicts an example of smart window logical groups that can becontrolled in the system shown in FIG. 1A and variations thereof. Invarious embodiments, a smart window 102 can have one electrochromicdevice 114, or two or more electrochromic devices 114, for example asmultiple panes of a window. The smart window system can select andcontrol various groups of electrochromic devices 114, whether on thesame smart window 102 or differing smart windows 102. One logical group118, denoted group A, is all of the electrochromic devices 114 in FIG.1B. Such a group would be useful to select all of the smart windows 102of a wall, a room, a side of a building, a floor of a building, etc. Twomore logical groups 120, 122 categorize electrochromic devices 114 bysize, or by upper and lower placement, for example. Logical group 120denoted group B could include the smaller sized electrochromic devices114, or the upper electrochromic devices 114 in an arrangement, andlogical group 120 denoted group C could include the larger sizedelectrochromic devices 114, or the lower electrochromic devices 114 inthe arrangement. This grouping is useful to tint upper electrochromicdevices 114 when the sun is higher in the sky, independently of how thelower electrochromic devices 114 are tinted, for example. Logical groups124, 126, 128 denoted group D, group E and group F could each group anupper electrochromic device 114 and a lower electrochromic device 114 asa pair to be controlled together. With that grouping, pairs (or largernumbers) of electrochromic devices 114 could be treated as equivalent toa single, larger or compound electrochromic device 114 and tintedtogether. Alternatively, the electrochromic devices 114 in a multi-panesmart window are grouped together. Further such combinations and logicalgroups are readily devised. Many combinations could have different sizedelectrochromic devices 114 in a group, or electrochromic devices 114with differing chemistry, fabrication, or other characteristics.

FIG. 2 is a cross-section view of a double pane electrochromic device206. Under certain circumstances, it may be desirable to tint theoutside pane 204, the inside pane 202, or both panes 202, 204, for anindividual smart window 102, or as part of a group of smart windows 102.For example, tinting the outside pane 204 causes ultraviolet andinfrared light to be absorbed and re-radiated as infrared from thatoutside pane 204, keeping the interior of a building cooler or lessheated by sunlight, and may be preferable in summer. Tinting the insidepane 202 causes the ultraviolet and infrared light to be absorbed andre-radiated as infrared from that inside pane 202, where some of thisreradiated energy is trapped as heat inside the double paneelectrochromic device 206, e.g., in nitrogen or other gas trappedbetween the outside and inside panes 204, 202, and some of this isreradiated to the interior of the building as may be preferable inwinter.

FIG. 3A depicts transfer functions of tint versus charge for variouselectrochromic devices. The graph 302 depicts a family of transferfunction curves 304, 306, 308 that are possible for electrochromicdevices 114. The perhaps ideal case is a linear, straight-line transferfunction 304, in which the tint level is directly proportional to thetotal amount of charge transferred into the electrochromic device 114.Above the straight-line transfer function 304 is an upward facing convextransfer function 306, for another electrochromic device 114, in whichrelatively less total charge transfer gives relatively greater tint.Below the straight-line transfer function 304 is an upward facingconcave transfer function 308, for yet another electrochromic device114, in which relatively more total charge transfer gives relativelyless tint, in comparison to the straight-line transfer function 304.Other shapes for transfer functions are possible.

FIG. 3B depicts transfer functions of tint versus charge for varioussizes of electrochromic devices 114. The graph 310 depicts a family oftransfer function curves 312, 314, 316 of tint versus charge that arepossible for different size electrochromic devices 114. The smallelectrochromic pane achieves a given tint level, up to 100%, for a totalcharge transfer of less than that for the medium size electrochromicpane, which in turn achieves that same tint level for a total chargetransfer of less than that for the large size electrochromic pane. Eachof these transfer functions 312, 314, 316 could have straight-line,convex or concave shape, or other shape as discussed above.

FIG. 4A is an embodiment of a controller 402 that monitors andintegrates current to determine charge transfer into and out of anelectrochromic device 114, and communicates with other controllers 402,using a communication module 420, to coordinate tint or transmissivitylevels of the electrochromic devices 114 in accordance with transferfunctions 304, 306, 308, 312, 314, 316 for the electrochromic devices114. To drive multiple smart windows 102 to uniform tint ortransmissivity levels, multiple controllers 402 communicate amongstthemselves, and perform control functions in a control loop 412, asdiscussed below, to drive each of the electrochromic devices 114. Insome embodiments, a single controller 402 coordinates with one or moredrivers 422 as shown in FIGS. 4B-4D.

In one embodiment, the controllers 402 consult transfer functions 410(e.g., 304, 306, 308, 312, 314, 316), which could be in the form of datastructures 408 in memory 406. These and other functions can be performedby a synchronizer 430 in the controller 402, which synchronizes tint ortransmissivity levels for multiple electrochromic devices 114. Thetransfer functions 410 could be obtained from the smart window services108, preloaded into memory 406 during manufacture of the controllers402, or determined empirically through installer or user feedback, etc.For example, if the controllers 402 are directing the electrochromicwindows to 25% tint level, the controllers 402 determine the amount ofcharge according to each of the charge transfer functions 410 for therespective windows to be tinted. Then the controllers 402 drive theelectrochromic windows, using a driver 422, monitoring the current to orfrom each electrochromic window, using a current monitor 414,integrating the current, using an integrator 416, and determining theamount of charge transferred. For example, in one embodiment, the driver422 drives the anode 424 of the electrochromic device 114, and thecurrent monitor 414 monitors voltage across a sense resistor 428attached to the cathode 426 of the electrochromic device 114, althoughother mechanisms for driving electrochromic devices and monitoringcurrent are readily devised. When the total amount of charge transferredfor a specific window equals the determined amount of charge for therequested tint level, the controller 402 stops driving current into orout of the electrochromic window. This achieves uniform tint ortransmissivity level for the electrochromic windows that are selectedfor the tinting operation, but does not necessarily achieve uniform rateof change of tint or transmissivity level (e.g., unless theelectrochromic windows are all of uniform size, chemistry and age).

To achieve uniform rate of change of tint or transmissivity level, inone embodiment the controllers 402 adjust the level of current (andtherefore the rate of charge transfer) driven into or out of each of theelectrochromic devices 114 so that the rate of change of transmissivityaccording to the transfer functions 410 of each of the electrochromicdevices 114 matches.

FIG. 4B depicts a variation of the controller 402 of FIG. 4A with adriver 422 that has multiplexed or switched control of multipleelectrochromic devices 114. This embodiment allows one controller 402and one driver 422 to control multiple electrochromic devices 114, bymultiplexing or switching control from the driver 422 to each of theelectrochromic devices 114. For example, the driver 422 could have amultiplexer or a switch, and timeshare control to electrochromic devices114 in a sequence, to control one at a time, or two or more at closelyspaced times to mimic control at the same time.

FIG. 4C depicts a further variation of the controller 402 of FIG. 4Awith multiple drivers 422 for parallel control of multipleelectrochromic devices 114. This embodiment allows one controller 402and multiple drivers 422 to control the electrochromic devices 114, withone driver 422 for each electrochromic device 114. The controller 422could instruct each driver 422 to control a corresponding electrochromicdevice 114 independently of other drivers 422 and electrochromic devices114, or could issue instructions to groups of drivers 422 andcorresponding electrochromic devices 114.

FIG. 4D depicts a further variation of the controller 402 of FIG. 4Awith a driver 422 that controls series-connected electrochromic devices114. With this arrangement, the electrochromic devices 114 connected inseries receive the same, or a shared, control from the driver 422 butare not controlled individually or independently. For example, it couldbe less expensive or easier to manufacture two or more electrochromicdevices 114 attached to a single glass pane as a substrate and controlthese electrochromic devices 114 as if they were a single, monolithicelectrochromic device, than to manufacture a single, largerelectrochromic device 114.

FIG. 5A depicts a faster tinting electrochromic device 502 tinting andwaiting until a slower tinting electrochromic device 504 achieves aspecific tinting level. In one embodiment, to achieve uniform rate ofchange of tint or transmissivity level, the controllers 402 communicateamongst themselves and determine which of the electrochromic devices 114is switching most slowly. Tinting at each of the electrochromic devices114 that is switching more rapidly (i.e., tinting at a faster rate) thanthe slowest (i.e., tinting at a slower rate) one(s) is stopped, forexample at a predetermined tint level, until the most slowly switchingelectrochromic device 114 attains (i.e., catches up to) thatpredetermined tint level. Then, tinting of all of the electrochromicdevices 114 resumes, and this process is repeated at the nextpredetermined tint level. This proceeds iteratively until the desiredfinal level of uniform tint or transmissivity is achieved, as shown atthe right end of the graph in FIG. 5A. Step size could be adjusted, withfiner step size giving a more continuously appearing rate of change tothe tint or transmissivity.

One embodiment applies leaderless coordination among the smart windows102. The group of drivers and controllers 402 coordinate amongstthemselves while tinting, and do not rely on a gateway, cloud ordesignated leader to do the coordination. The group adapts to howevermany drivers and controllers 402 are present and communicating in thegroup. Analogous to a flock of birds or crowd of people going to adestination that will slow themselves down for the slowest bird in theflock or person in the crowd, the group does not have to have adesignated leader, and all know the common destination and arrivetogether.

The above mechanisms and processes can be applied to groups ofelectrochromic devices 114 to make patterns switch levels of tint at auniform rate and/or to a uniform level. These can also be applied tooutside 204 and inside 202 panes as depicted in FIG. 2. The controller402 shown in FIGS. 4A-4D can be implemented in any of the controldevices shown in FIG. 1A, or distributed throughout the distributeddevice network 112, in various embodiments. Some embodiments adjust rateof change of tinting, and associated levels of current and chargetransfer, to achieve more uniform tinting in a specific electrochromicdevice 114 where most rapid tinting has a tendency to show tintingartifacts (e.g., around electrodes or bus bars).

FIG. 5B depicts the faster tinting electrochromic device 502 tinting andwaiting to remain within a tint range of the tint level of the slowertinting electrochromic device 504. In this variation of the scenario ofFIG. 5A, the tinting at each of the electrochromic devices 114 that isswitching more rapidly than the slower one(s) is stopped until thetinting of the slower tinting electrochromic device 504 overtakes thestopped tinting level. When another threshold is reached by the slowertinting electrochromic device 504, tinting of the faster tintingelectrochromic device(s) 502 resumes. By alternately tinting andwaiting, the tint level of the faster tinting electrochromic device(s)502 can be kept close to the tint level of the slower tintingelectrochromic device(s) 504, for example within a specified range.Thresholds, ranges, duty cycles, symmetric or asymmetric deviations,etc. in various combinations, could be adjustable.

FIG. 5C depicts the faster tinting electrochromic device tinting,bleaching and waiting, in various combinations, to remain within a tintrange of the tint level of the slower tinting electrochromic device. Inthis variation of the scenarios of FIGS. 5A and 5B, the control of thefaster tinting electrochromic device 502 alternately tints and bleaches,backtracking and touching or crisscrossing over the tint level of theslower tinting electrochromic device 504, optionally waiting as in thescenario depicted in FIG. 5B.

It should be appreciated that all of the scenarios depicted and FIGS.5A-5C can be readily developed for increasing tint level or decreasingtint level, and for tint levels that are initially far apart or closetogether. Further variations, including for embodiments ofelectrochromic devices that have color hues as shown in FIGS. 7 and 8,are readily developed in keeping with the teachings herein.

FIG. 6 is a flow diagram of a method of controlling transmissivity ofmultiple electrochromic devices, which can be practiced by embodimentsof the controller and the distributed device network as shown in FIGS.1A-5C, 8 and 9. The method can be practiced by one or more processors,such as processors in controllers and components in the distributeddevice network. In an action 602, a request to change tint level ofelectrochromic devices is received. The request could be received from auser, through a user device, or could be received from one or morecomponents of the distributed device network making a decision undervarious circumstances.

In an action 604, transfer functions are consulted. The transferfunctions are of tint level of an electrochromic device versus drive,for example charge transfer into or out of an electrochromic device. Invarious embodiments, the transfer functions are downloaded from a smartwindow service, are resident in memory in a controller, or aredetermined based on user feedback.

In an action 606, an amount of charge to transfer to each electrochromicdevice is determined, based on tint level and the transfer functions.For example, for a specific tint level and electrochromic device, therelevant transfer function shows the amount of charge to transfer to theelectrochromic device. In an action 608, the electrochromic devices aredriven, coordinating tint level or rate of change of tint level acrossthe electrochromic devices. The controller drives the determined amountof charge, for each of the electrochromic devices, and in someembodiments controls the rate at which that charge is delivered (i.e.,the current to or from the electrochromic device) and/or stops andstarts driving a particular electrochromic device while comparing tintlevels of electrochromic devices, based on the transfer functions andtracking charge transfer. In variations of the method, patterns areformed by controlling tinting of groups of electrochromic devices at auniform rate or to a uniform level.

FIG. 7 depicts a multi-axis space for representing tint levels that havelevels of color hues at various levels of transmissivity. One axis 702,e.g. the z-axis perpendicular to the page in this depiction, isdesignated for tint levels from dark to light, i.e. high tint, lowtransmissivity or high opacity, to low tint, high bleach, hightransmissivity or low opacity. A second axis 706, e.g., the x-axis inthis depiction, is designated for tint levels from green to blue (orcould be other colors). A third axis 704, e.g., the y-axis in thisdepiction, is designated for tint levels from yellow to red (or could beother colors). Tint levels, curves, families of curves or aspace-filling geometry of tint levels can be represented in thismultiaxis space, and from this representation two axis versions of thesecurves can be projected as depicted in FIG. 8. Generally, a curve,family of curves, or a filled geometry represented in the multiaxisspace will be implementation specific to a given electrochromic device114, and others may or may not share the same geometry.

FIG. 8 is a two axis graph of visible light transmissivity, denoted asTvis, versus color hue of one of the color axes of FIG. 7, denoted asB*, showing various paths for changing tint level of an electrochromicdevice 114. The vertical axis, Tvis, has 100% visible lighttransmissivity at the bottom as a theoretical maximum transparent value,and 0% visible light transmissivity at the top as a theoretical maximumopaque value. Most, if not all, practical electrochromic devices 114will have a maximum tinted value 806 that is less than 0% visible lighttransmissivity or lower on the vertical axis than the top, and a maximumbleached value 808 that is less than 100% transparent, or higher up onthe vertical axis than the bottom. The horizontal axis, B*, hasendpoints of one of the color hue axes of the FIG. 7 or variationsthereof, for example green to blue or yellow to red, or vice versa, orsome other colors. Boundaries and interior of the geometry displayed onthe two axis graph of FIG. 8 include possible levels of visible lighttransmissivity and color hue for a specific electrochromic device 114.The boundaries show paths 810, 812 for tinting and bleaching theelectrochromic device 114 between the two maxima (i.e., maximum bleachedvalue 808 and maximum tinted value 806). These paths 810, 812 arenonlinear and have hysteresis. That is, tinting the electrochromicdevice 114, from the maximum bleached value 808 produces one set ofvalues of visible transmissivity and color hue along the tinting path810. Bleaching the electrochromic device 114, from the maximum tintedvalue 806, produces another set of values of visible transmissivity andcolor hue along the bleaching path 812, and these values differ betweenthe two paths 810, 812. Arrows along these paths 810, 812 and otherexample paths 814, 816, 818, 820, 822, 824 show the direction of travelfor tinting or bleaching operations on the electrochromic device 114.So, for example, from a point along the tinting path 810 from themaximum bleached value 808, a bleaching path 814 deviates from thetinting path 810 and produces another set of visible transmissivity andcolor hue values. And, from a point along the bleaching path 812 fromthe maximum tinted value 806, a tinting path 816 produces yet anotherset of visible transmissivity and color hue values.

Of relevance to the alternating tinting and bleaching depicted in FIG.5C, a variation of that scenario can be followed to alternately bleachand tint (or vice versa) an electrochromic device 114 and attain aspecified visible transmissivity value and color hue value at a point826 in some embodiments. In this example, from the tinting path 810 fromthe maximum bleached value 808, a bleaching path 818, a tinting path820, a bleaching path 822, and a tinting path 824 arrive at theintended, desired or specified transmissivity value and color hue value826. Many other possible tinting and bleaching paths, optionally withwaiting, could arrive at this point 826, or any other desired orspecified transmissivity value and color hue value point that is withinthe boundaries of the bleaching path 812 from the maximum tinted value806 to the maximum bleached value 808 and the tinting path 810 from themaximum bleached value 808 to the maximum tinted value 806. A color huevalue could be reached at multiple values of visible lighttransmissivity, as would be represented by a vertical line segment inthe graph of FIG. 8. Various embodiments of the smart window systemperform matching or synchronization of visible light transmissivity,color hue, or both, across various electrochromic devices 114 whenswitching, as further described in the method in FIG. 10. Informationabout visible light transmissivity and color hue relative to tinting andbleaching, is readily represented in transfer functions relating tocharge transfer such as shown in FIGS. 3A and 3B and embodied intransfer functions 410 in FIG. 4A. This information, in various forms,is employed for matching or coordinating color hue as well as visiblelight transmissivity of multiple electrochromic devices 114 when thesmart window system tints or bleaches electrochromic devices 114.

FIG. 9 depicts communication among smart window components, using anetwork protocol. Referring back to FIGS. 1A and 4A-4D, variousembodiments of the smart window system have various communications amongsmart windows 102, smart controllers 104, the smart window gateway 106,user devices 110 and smart window services 108, and these communicationscould have various formats and protocols. The example in FIG. 9 is oneembodiment for communication, and variations and other embodiments arereadily devised in keeping with the teachings herein. In this example,the communication is through IPv6 (Internet protocol, version 6) 902,UDP (user datagram protocol) 904 messages called datagrams. The messagesuse HTTP (hypertext terminal protocol) RESTful (representational statetransfer) 906 compliant web services to express verbs, such as get, put,patch, post, delete. Data is sent in a format such as JSON (JavaScriptobject notation) or CBOR (concise binary object representation), and caninclude a list 910 of binary data. One example of a list 910 is the list912, which communicates 1. WINDOW GROUP 5 (e.g., the smart window 102 isin logical group number 5), 2. AM LEVEL=59 (e.g., the smart window 102is at tint level 59), 3. GOING TO=88 (e.g., the smart window 102 istransitioning to tint level 88). Other information, formats, protocolsand communication mechanisms are readily devised in keeping with theteachings herein.

FIG. 10 is a flow diagram of a method of controlling color hue ofmultiple electrochromic devices, which can be practiced by embodimentsof the controller and the distributed device network as shown in FIGS.1A-5C, 8 and 9. The method can be practiced by one or more processors,such as processors in controllers and components in the distributeddevice network. By controlling color hue, the method also controls tintor transmissivity of electrochromic devices. In an action 1002, arequest to change tint level or color hue of electrochromic devices isreceived. The request could be received from a user, through the userdevice, or could be received from one or more components of thedistributed device network making a decision under variouscircumstances.

In an action 1004, transfer functions are consulted. The transferfunctions are of color hue of an electrochromic device versus drive, forexample charge transfer into or out of an electrochromic device in someembodiments. These transfer functions could be combined with transferfunctions for tint level, in some embodiments. In various embodiments,the transfer functions are downloaded from a smart window service, areresident in memory in a controller, or are determined based on userfeedback.

In an action 1006 of FIG. 10, an amount of charge to transfer to eachelectrochromic device is determined, based on color hue level and thetransfer functions. For example, for a specific color hue andelectrochromic device, the relevant transfer function shows the amountof charge to transfer to the electrochromic device. In an action 608,the electrochromic devices are driven, coordinating color hue or rate ofchange of color hue across the electrochromic devices. The controllerdrives the determined amount of charge, for each of the electrochromicdevices, and in some embodiments controls the rate at which that chargeis delivered (i.e., the current to or from the electrochromic device)and/or stops and starts driving a particular electrochromic device whilecomparing color hue levels of electrochromic devices, based on thetransfer functions and tracking charge transfer. In variations of themethod, patterns are formed by controlling color hue of groups ofelectrochromic devices at a uniform rate or to a uniform level. Adesired color hue is matched or attained by following a direct path orcombination of paths of alternating bleaching and tinting such as shownin FIGS. 5C and 8, optionally with waiting, in various embodiments.

It should be appreciated that the methods described herein may beperformed with a digital processing system, such as a conventional,general-purpose computer system. Special purpose computers, which aredesigned or programmed to perform only one function may be used in thealternative. FIG. 11 is an illustration showing an exemplary computingdevice which may implement the embodiments described herein. Thecomputing device of FIG. 11 may be used to perform embodiments of thefunctionality for the smart window control processes in accordance withsome embodiments. The computing device includes a central processingunit (CPU) 1101, which is coupled through a bus 1105 to a memory 1103,and mass storage device 1107. Mass storage device 1107 represents apersistent data storage device such as a floppy disc drive or a fixeddisc drive, which may be local or remote in some embodiments. Memory1103 may include read only memory, random access memory, etc.Applications resident on the computing device may be stored on oraccessed via a computer readable medium such as memory 1103 or massstorage device 1107 in some embodiments. Applications may also be in theform of modulated electronic signals modulated accessed via a networkmodem or other network interface of the computing device. It should beappreciated that CPU 1101 may be embodied in a general-purposeprocessor, a special purpose processor, or a specially programmed logicdevice in some embodiments.

Display 1111 is in communication with CPU 1101, memory 1103, and massstorage device 1107, through bus 1105. Display 1111 is configured todisplay any visualization tools or reports associated with the systemdescribed herein. Input/output device 1109 is coupled to bus 1105 inorder to communicate information in command selections to CPU 1101. Itshould be appreciated that data to and from external devices may becommunicated through the input/output device 1109. CPU 1101 can bedefined to execute the functionality described herein to enable thefunctionality described with reference to FIGS. 1A-10. The codeembodying this functionality may be stored within memory 1103 or massstorage device 1107 for execution by a processor such as CPU 1101 insome embodiments. The operating system on the computing device may be MSDOS™, MS-WINDOWS™, OS/2™, UNIX™, LINUX™, or other known operatingsystems. It should be appreciated that the embodiments described hereinmay also be integrated with a virtualized computing system that isimplemented with physical computing resources.

It should be understood that although the terms first, second, etc. maybe used herein to describe various steps or calculations, these steps orcalculations should not be limited by these terms. These terms are onlyused to distinguish one step or calculation from another. For example, afirst calculation could be termed a second calculation, and, similarly,a second step could be termed a first step, without departing from thescope of this disclosure. As used herein, the term “and/or” and the “I”symbol includes any and all combinations of one or more of theassociated listed items.

As used herein, the singular forms “a”, “an” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises”,“comprising”, “includes”, and/or “including”, when used herein, specifythe presence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof. Therefore, the terminology usedherein is for the purpose of describing particular embodiments only andis not intended to be limiting.

It should also be noted that in some alternative implementations, thefunctions/acts noted may occur out of the order noted in the figures.For example, two figures shown in succession may in fact be executedsubstantially concurrently or may sometimes be executed in the reverseorder, depending upon the functionality/acts involved.

With the above embodiments in mind, it should be understood that theembodiments might employ various computer-implemented operationsinvolving data stored in computer systems. These operations are thoserequiring physical manipulation of physical quantities. Usually, thoughnot necessarily, these quantities take the form of electrical ormagnetic signals capable of being stored, transferred, combined,compared, and otherwise manipulated. Further, the manipulationsperformed are often referred to in terms, such as producing,identifying, determining, or comparing. Any of the operations describedherein that form part of the embodiments are useful machine operations.The embodiments also relate to a device or an apparatus for performingthese operations. The apparatus can be specially constructed for therequired purpose, or the apparatus can be a general-purpose computerselectively activated or configured by a computer program stored in thecomputer. In particular, various general-purpose machines can be usedwith computer programs written in accordance with the teachings herein,or it may be more convenient to construct a more specialized apparatusto perform the required operations.

A module, an application, a layer, an agent or other method-operableentity could be implemented as hardware, firmware, or a processorexecuting software, or combinations thereof. It should be appreciatedthat, where a software-based embodiment is disclosed herein, thesoftware can be embodied in a physical machine such as a controller. Forexample, a controller could include a first module and a second module.A controller could be configured to perform various actions, e.g., of amethod, an application, a layer or an agent.

The embodiments can also be embodied as computer readable code on atangible non-transitory computer readable medium. The computer readablemedium is any data storage device that can store data, which can bethereafter read by a computer system. Examples of the computer readablemedium include hard drives, network attached storage (NAS), read-onlymemory, random-access memory, CD-ROMs, CD-Rs, CD-RWs, magnetic tapes,and other optical and non-optical data storage devices. The computerreadable medium can also be distributed over a network coupled computersystem so that the computer readable code is stored and executed in adistributed fashion. Embodiments described herein may be practiced withvarious computer system configurations including hand-held devices,tablets, microprocessor systems, microprocessor-based or programmableconsumer electronics, minicomputers, mainframe computers and the like.The embodiments can also be practiced in distributed computingenvironments where tasks are performed by remote processing devices thatare linked through a wire-based or wireless network.

Although the method operations were described in a specific order, itshould be understood that other operations may be performed in betweendescribed operations, described operations may be adjusted so that theyoccur at slightly different times or the described operations may bedistributed in a system which allows the occurrence of the processingoperations at various intervals associated with the processing.

In various embodiments, one or more portions of the methods andmechanisms described herein may form part of a cloud-computingenvironment. In such embodiments, resources may be provided over theInternet as services according to one or more various models. Suchmodels may include Infrastructure as a Service (IaaS), Platform as aService (PaaS), and Software as a Service (SaaS). In IaaS, computerinfrastructure is delivered as a service. In such a case, the computingequipment is generally owned and operated by the service provider. Inthe PaaS model, software tools and underlying equipment used bydevelopers to develop software solutions may be provided as a serviceand hosted by the service provider. SaaS typically includes a serviceprovider licensing software as a service on demand. The service providermay host the software, or may deploy the software to a customer for agiven period of time. Numerous combinations of the above models arepossible and are contemplated.

Various units, circuits, or other components may be described or claimedas “configured to” or “configurable to” perform a task or tasks. In suchcontexts, the phrase “configured to” or “configurable to” is used toconnote structure by indicating that the units/circuits/componentsinclude structure (e.g., circuitry) that performs the task or tasksduring operation. As such, the unit/circuit/component can be said to beconfigured to perform the task, or configurable to perform the task,even when the specified unit/circuit/component is not currentlyoperational (e.g., is not on). The units/circuits/components used withthe “configured to” or “configurable to” language include hardware—forexample, circuits, memory storing program instructions executable toimplement the operation, etc. Reciting that a unit/circuit/component is“configured to” perform one or more tasks, or is “configurable to”perform one or more tasks, is expressly intended not to invoke 35 U.S.C.112, sixth paragraph, for that unit/circuit/component. Additionally,“configured to” or “configurable to” can include generic structure(e.g., generic circuitry) that is manipulated by software and/orfirmware (e.g., an FPGA or a general-purpose processor executingsoftware) to operate in manner that is capable of performing the task(s)at issue. “Configured to” may also include adapting a manufacturingprocess (e.g., a semiconductor fabrication facility) to fabricatedevices (e.g., integrated circuits) that are adapted to implement orperform one or more tasks. “Configurable to” is expressly intended notto apply to blank media, an unprogrammed processor or unprogrammedgeneric computer, or an unprogrammed programmable logic device,programmable gate array, or other unprogrammed device, unlessaccompanied by programmed media that confers the ability to theunprogrammed device to be configured to perform the disclosedfunction(s).

The foregoing description, for the purpose of explanation, has beendescribed with reference to specific embodiments. However, theillustrative discussions above are not intended to be exhaustive or tolimit the invention to the precise forms disclosed. Many modificationsand variations are possible in view of the above teachings. Theembodiments were chosen and described in order to best explain theprinciples of the embodiments and its practical applications, to therebyenable others skilled in the art to best utilize the embodiments andvarious modifications as may be suited to the particular usecontemplated. Accordingly, the present embodiments are to be consideredas illustrative and not restrictive, and the invention is not to belimited to the details given herein, but may be modified within thescope and equivalents of the appended claims.

What is claimed is:
 1. A method of controlling tint for a plurality ofelectrochromic devices, performed by a control system, comprising:receiving a request to change tint level of a plurality ofelectrochromic devices; identifying, in a memory of the control system,data structures having therein transfer functions for tint levelrelative to applied charge for each of the plurality of electrochromicdevices, wherein at least one of the plurality of electrochromic deviceshas a transfer function for tint level relative to applied chargediffering from at least one other of the plurality of electrochromicdevices; and applying a charge to each of the plurality ofelectrochromic devices in accordance with the transfer functions, so asto coordinate tint level or rate of change of tint level across theplurality of electrochromic devices.
 2. The method of claim 1, furthercomprising: determining an amount of charge to transfer to each of theplurality of electrochromic devices, based on a tint level in accordancewith the request and based on the transfer functions.
 3. The method ofclaim 1, further comprising: obtaining the transfer functions from aservice via a network.
 4. The method of claim 1, further comprising:monitoring current to or from each of the plurality of electrochromicdevices; integrating the current to or from each of the plurality ofelectrochromic devices; and determining an amount of charge transferredto or from each of the plurality of electrochromic devices, based on theintegrating the current, wherein the driving each of the plurality ofelectrochromic devices in accordance with the transfer functions isbased on the determined amount of charge transferred to or from each ofthe plurality of electrochromic devices.
 5. The method of claim 1,further comprising: determining a first one of the plurality ofelectrochromic devices is changing tint at a slower rate in theplurality of electrochromic devices; stopping changing tint of a secondone of the plurality of electrochromic devices that is changing at afaster rate tint than the first one of the plurality of electrochromicdevices, until the first one of the plurality of electrochromic devicesattains a tint level of the stopped second one of the plurality ofelectrochromic devices; and resuming changing tint of the first andsecond ones of the plurality of electrochromic devices.
 6. The method ofclaim 1, wherein the driving so as to coordinate the tint level or rateof change of tint level comprises: driving groups of electrochromicdevices to make patterns switch levels of tint at a uniform rate or to auniform level.
 7. The method of claim 1, further comprising: adjustingrate of change of tinting to achieve more uniform tinting in at leastone of the plurality of electrochromic devices as compared to most rapidtinting, wherein the driving so as to coordinate the tint level or rateof change of tint level is in accordance with the adjusted rate ofchange.
 8. A controller with transmission level synchronization forelectrochromic devices, comprising: a memory, configurable to store datastructures having therein a plurality of transfer functions for tintlevel relative to drive of electrochromic devices; and one or moreprocessors configurable to couple to at least a first electrochromicdevice and a second electrochromic device and to perform a methodcomprising: identifying a first data structure associated with a firsttransfer function for the first electrochromic device, and a second datastructure associated with a second transfer function for the secondelectrochromic device; and applying a charge to the first electrochromicdevice in accordance with the first transfer function, and applying acharge to the second electrochromic device in accordance with the secondtransfer function, to coordinate rate of change of tint level of thefirst electrochromic device and rate of change of tint level of thesecond electrochromic device.
 9. The controller of claim 8, wherein theone or more processors are further configurable to determine a firstamount of charge to transfer to the first electrochromic device inaccordance with the first transfer function, and a second amount ofcharge to transfer to the second electrochromic device in accordancewith the second transfer function, based on a tint level for both thefirst electrochromic device and the second electrochromic device. 10.The controller of claim 8, wherein the one or more processors arefurther configurable to obtain the first transfer function and thesecond transfer function from a service via a network.
 11. Thecontroller of claim 8, wherein the one or more processors are furtherconfigurable to determine the first transfer function and the secondtransfer function based on user feedback.
 12. The controller of claim 8,wherein: the one or more processors are further configurable todetermine an amount of charge transferred to or from each of the firstelectrochromic device and the second electrochromic device, based onintegrating current to or from each of the first electrochromic deviceand the second electrochromic device; and the driving the firstelectrochromic device and the second electrochromic device to coordinatethe tint levels or rates of change of the first electrochromic deviceand the second electrochromic device is based on the determined amountof charge transferred to or from each of the first electrochromic deviceand the second electrochromic device.
 13. The controller of claim 8,wherein the method further comprises: determining the firstelectrochromic device is changing tint at a slower rate than the secondelectrochromic device; stopping changing tint of the secondelectrochromic device until the first electrochromic device meets a tintlevel of the second electrochromic device; and resuming changing tint ofthe second electrochromic device.
 14. The controller of claim 8, whereinthe one or more processors are further configurable to adjust rate ofchange of tinting and drive groups of electrochromic devices to makepatterns switch levels of tint at a uniform rate or to a uniform level.15. A method of controlling tint for a plurality of electrochromicdevices, performed by a control system, comprising: receiving a requestto change tint level or color hue of a plurality of electrochromicdevices; identifying, in a memory of the control system, data structureshaving therein transfer functions for color hue relative to drive foreach of the plurality of electrochromic devices; and applying a chargeto each of the plurality of electrochromic devices in accordance withthe transfer functions, so as to coordinate color hue across theplurality of electrochromic devices.
 16. The method of claim 15, whereinthe applying comprises: alternating bleaching and tinting at least oneof the plurality of electrochromic devices, to match color hue of one ormore of the plurality electrochromic devices to within a specifiedrange.
 17. The method of claim 15, further comprising: determining oneor more of the plurality of electrochromic devices is changing color hueat a slower rate in the plurality of electrochromic devices than atleast one of the plurality of electrochromic devices; stopping changingcolor hue of the at least one of the plurality of electrochromicdevices, until the one or more of the plurality of electrochromicdevices attains or exceeds a color hue of the at least one of theplurality of electrochromic devices; and resuming changing color hue ofthe at least one of the plurality of electrochromic devices.
 18. Themethod of claim 15, wherein the applying comprises driving at least twoof the plurality of electrochromic devices from a single driver, bymultiplexing or switching the single driver.
 19. The method of claim 15,wherein the applying comprises driving the plurality of electrochromicdevices from a plurality of drivers in parallel.
 20. The method of claim15, wherein the applying comprises driving two or more of the pluralityelectrochromic devices in series from a driver.